MAP: A Pascal Macro Preprocessor for Large Program Development

نویسنده

  • Douglas Comer
چکیده

The programming language Pascal waH originally designed for tcaching introductory programming, currently, however, production systems use it as the primary implementation language. This paper describes extensions of Pascal intended to aid the large program developer. The extensions are implemented in a macro preprocessor MAP, which supports constant expression evaluation, source file inclusion, conditional compilation, and macro substitution. While each of these features can be used independently, they are all implemented with a simple, uniform syntax. Furthermore, in keeping wi th the spirit of Pascal, an attempt has been made to make the facilities straightforward and simple. ~he design and implementation details arc discussed.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Macro Impact Analysis Using Macro Slicing

The expressiveness of the C/C++ preprocessing facility enables the development of highly configurable source code. However, the usage of language constructs like macros also bears the potential of resulting in highly incomprehensible and unmaintainable code, which is due to the flexibility and the “cryptic” nature of the preprocessor language. This could be overcome if suitable analysis tools w...

متن کامل

An Empirical Analysis of C Preprocessor Use

This is the first empirical study of the use of the C macro preprocessor, Cpp. To determine how the preprocessor is used in practice, this paper analyzes 26 packages comprising 1.4 million lines of publicly available C code. We determine the incidence of C preprocessor usage—whether in macro definitions, macro uses, or dependences upon macros— that is complex, potentially problematic, or inexpr...

متن کامل

Opening Up The C/C++ Preprocessor Black Box

File inclusion, conditional compilation and macro processing has made the preprocessor a powerful tool for programmers. Preprocessor directives are extensively used in C/C++ programs and have various purposes. However, program code with lots of directives often causes problems in program understanding and maintenance. The main source of the problem is the difference between the code that the pr...

متن کامل

Implementation of Language Enhancements

Data abstractions have been proposed as a mean,, to enhance program modularity. The implementation of such ne~ features to an existing language is typically handled bx either rewriting large portions of an existing compiler or by using a preprocessor 1o translate the extensions into the standard language. The first technique is expensixe to implement while the latter is usuall 3 slov, and clums...

متن کامل

Service Layer for IDE Integration of C/C++ Preprocessor Related Analysis

Software development in C/C++ languages is tightly coupled with preprocessor directives. While the use of preprocessor constructs cannot be avoided, current IDE support for developers can still be improved. Early feedback from IDEs about misused macros or conditional compilation has positive effects on developer productivity and code quality as well. In this paper we introduce a service layer f...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Softw., Pract. Exper.

دوره 9  شماره 

صفحات  -

تاریخ انتشار 1979